export default {
    state: {
        name: '青阳子',
        age: 34,
        count: 1,
        books: [{
            id: 1,
            status: true,
            title: '历史'
        },
        {
            id: 2,
            status: false,
            title: '语文'
        },
        {
            id: 3,
            status: false,
            title: '数学'
        },
        {
            id: 4,
            status: true,
            title: '英语'
        }
        ]
    },
    getters: {//用于进行计算-对应的是页面中的计算属性
        getbooks(state) {
            return state.books.filter(item => {
                return item.status
            })
        },
        getbigbooks(state, getters) {//getters参数就是getters本身
            console.log(getters.getbooks);
            return getters.getbooks.filter(item => {
                return item.id > 1
            })
        }
    },
    mutations: {//对应的是页面中的方法
        //    addx(state){
        //       state.age++
        //    }

        addxcount(state, payload) {//payload载荷
            console.log('payload=>', payload);
            state.count += payload
        },
        addybook(state, payload) {
            state.books.push(payload)
        }
    },
    actions: {//对应的是页面中的异步方法-里面可以放一些axios的请求
        // context表示的是上下文环境，同时他也可以进行解构 解构成let {state,getters commit}=context
        asyncgetAction(context, n) {
            console.log('context=>', context);
            setInterval(() => {
                //   context.state.count++
                // context.state.count+=n
                // context.commit('addxcount',n)
                // context.getters.getbooks
            }, 2000)
        },

        asyncgetAction2({ state, commit, getters }, n) {
            setInterval(() => {
                // state.count++
                 state.count += n
                // commit('addxcount', n)
                // getters.getbooks
            }, 2000)
        }
    }
}